package com.quectel.core.module.partyeducationexam.dto;

import com.quectel.core.module.partybuilding.dto.PartyOrganizationDto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 *
 * @author ryan
 * @email ryan.ran@quectel.com
 * @date 2023/06/16 15:12
 */
@Data
@Schema
public class PartyEducationQuestionDto implements Serializable {

    /**
    * 
    */
    @Schema(description = "")
    private Long id;

    /**
    * 租户id
    */
    @Schema(description = "租户id")
    private Long tenantId;

    /**
    * 党组织id
    */
    @Schema(description = "党组织id")
    private Long partyId;

    /**
    * 题库 id
    */
    @Schema(description = "题库 id")
    private Long bankId;

    /**
    * 题目名称
    */
    @Schema(description = "题目名称")
    private String name;

    /**
    * 题类
    */
    @Schema(description = "题类")
    private Byte type;

    /**
    * 题目
    */
    @Schema(description = "题目")
    private String topic;

    /**
    * 选项
    */
    @Schema(description = "选项")
    private String questionOption;

    /**
    * 答案
    */
    @Schema(description = "答案")
    private String answer;

    /**
    * 解析
    */
    @Schema(description = "解析")
    private String analysis;

    /**
    * 依照顺序 1 需要 0 不需要
    */
    @Schema(description = "依照顺序 1 需要 0 不需要")
    private Byte inOrder;

    /**
    * 答案关键字
    */
    @Schema(description = "答案关键字")
    private String keywords;

    /**
     * 题目所属题库分类
     */
    @Schema(description = "题目所属题库分类")
    private Byte classify;

    /**
    * 状态
    */
    @Schema(description = "状态")
    private Byte status;

    /**
     * 是否删除 0 否 1 是
     */
    @Schema(description = "是否删除 0 否 1 是")
    private Byte isDel;

    /**
    * 创建人
    */
    @Schema(description = "创建人")
    private String creator;

    /**
    * 创建时间
    */
    @Schema(description = "创建时间")
    private Date createTime;

    /**
    * 修改人
    */
    @Schema(description = "修改人")
    private String editor;

    /**
    * 修改时间
    */
    @Schema(description = "修改时间")
    private Date editTime;

    /************非数据库字段 start ************/
    @Schema(description = "党组织")
    private PartyOrganizationDto party;

    @Schema(description = "题库信息")
    private PartyEducationQuestionBankDto questionBank;

    @Schema(description = "考生答案")
    private String entrantAnswer;
    @Schema(description = "考生得分")
    private BigDecimal entrantScore;
    @Schema(description = "评审结果 0 错误 1 正确")
    private Byte grade;
    /************非数据库字段 end **************/
}
